home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / nt4.0 server / DRVLIB.NIC / ICL16 / OEMSETUP.INF < prev   
INI File  |  1996-07-31  |  30KB  |  813 lines

  1. [Identification]
  2.     OptionType = NetAdapter
  3. [PlatformsSupported]
  4.     PCI
  5.     ISA
  6.     EISA
  7.     "Jazz-Internal Bus"
  8. [Options]
  9.     ETH16I
  10.     ETH32
  11. [IRQChoicesETH16I]
  12. IRQ_1 = "AUTO",255
  13. IRQ_2 = "5",5
  14. IRQ_3 = "9",9
  15. IRQ_4 = "10",10
  16. IRQ_5 = "15",15
  17. [IRQChoicesETH32]
  18. IRQ_1 = "AUTO",255
  19. IRQ_2 = "3",3
  20. IRQ_3 = "5",5
  21. IRQ_4 = "7",7
  22. IRQ_5 = "9",9
  23. IRQ_6 = "10",10
  24. IRQ_7 = "11",11
  25. IRQ_8 = "12",12
  26. IRQ_9 = "15",15
  27. [IOBaseAddrChoicesETH16I]
  28. IOBase_1  = "AUTO",0
  29. IOBase_2  = "0x240",576
  30. IOBase_3  = "0x260",608
  31. IOBase_4  = "0x280",640
  32. IOBase_5  = "0x2A0",672
  33. IOBase_6  = "0x300",768
  34. IOBase_7  = "0x340",832
  35. IOBase_8  = "0x380",896
  36. [IOBaseAddrChoicesETH32]
  37. IOBase_1  = "AUTO",0
  38. IOBase_2  = "0x1000 Slot 1",4096
  39. IOBase_3  = "0x2000 Slot 2",8192
  40. IOBase_4  = "0x3000 Slot 3",12288
  41. IOBase_5  = "0x4000 Slot 4",16384
  42. IOBase_6  = "0x5000 Slot 5",20480
  43. IOBase_7  = "0x6000 Slot 6",24576
  44. IOBase_8  = "0x7000 Slot 7",28672
  45. IOBase_9  = "0x8000 Slot 8",32768
  46. [TransceiverChoicesETH16I]
  47. Txcv_1 = "BNC","Bnc"
  48. Txcv_2 = "AUI","Aui"
  49. Txcv_3 = "TP","Tp"
  50. Txcv_4 = "AUTO","Auto"
  51. Txcv_5 = "SETUP","Setup"
  52. [TransceiverChoicesETH32]
  53. Txcv_1 = "BNC","Bnc"
  54. Txcv_2 = "AUI","Aui"
  55. Txcv_3 = "TP","Tp"
  56. Txcv_4 = "AUTO","Auto"
  57. Txcv_5 = "SETUP","Setup"
  58. [FileConstants]
  59. UtilityInf      = "UTILITY.INF"
  60. subroutineinf   = "SUBROUTN.INF"
  61. SoftwareType    = "driver"
  62. Exit_Code       = 0
  63. NetEventDLL     = "%SystemRoot%\System32\netevent.dll"
  64. IoLogMsgDLL     = "%SystemRoot%\System32\IoLogMsg.dll"
  65. Manufacturer    = "ICL"
  66. ProductMajorVersion     = "1"
  67. ProductMinorVersion     = "1"
  68. ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
  69. ProductSoftwareName     = "ETH16I"
  70. ProductSoftwareImagePath = "\SystemRoot\System32\drivers\eth16i.sys"
  71. NetRuleSoftwareType     = "eth16iSys ndisDriver eth16iDriver"
  72. NetRuleSoftwareUse      = $(SoftwareType)
  73. NetRuleSoftwareBindForm = """Eth16iSys"" yes no container"
  74. NetRuleSoftwareClass    = {"eth16iDriver basic"}
  75. NetRuleSoftwareBindable = {"eth16iDriver eth16iAdapter non exclusive 100"} 
  76. ProductHardwareName     = "ETH16I"
  77. NetRuleHardwareType     = "eth16i eth16iAdapter"
  78. NetRuleHardwareBindForm = " yes yes container"
  79. NetRuleHardwareClass    = {"eth16iAdapter basic"}
  80. ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
  81. ParamKeyName    = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
  82. [GeneralConstants]
  83. from      = ""
  84. to        = ""
  85. ExitCodeOk     = 0
  86. ExitCodeCancel = 1
  87. ExitCodeFatal  = 2
  88. KeyNull         = ""
  89. MAXIMUM_ALLOWED   = 33554432
  90. RegistryErrorIndex = NO_ERROR
  91. KeyProduct      = ""
  92. KeyParameters   = ""
  93. TRUE            = 1
  94. FALSE           = 0
  95. NoTitle            = 0
  96. ExitState   = "Active"
  97. OldVersionExisted = $(FALSE)
  98. DriverPath      = $(!STF_NTPATH)\drivers
  99. [date]
  100.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  101. [Identify]
  102.     read-syms Identification
  103.     set Status     = STATUS_SUCCESSFUL
  104.     set Identifier = $(OptionType)
  105.     set Media      = #("Source Media Descriptions", 1, 1)
  106.     Return $(Status) $(Identifier) $(Media)
  107. [ReturnOptions]
  108.     set Status        = STATUS_FAILED
  109.     set OptionList     = {}
  110.     set OptionTextList = {}
  111.     set LanguageList = ^(LanguagesSupported, 1)
  112.     Ifcontains(i) $($0) in $(LanguageList)
  113.         ifstr(i) $($1) == ""
  114.            goto returnoptions
  115.         endif
  116.         set PlatformList = ^(PlatformsSupported, 1)
  117.         Ifcontains(i) $($1) in $(PlatformList)
  118.            goto returnoptions
  119.         else
  120.            set Status = STATUS_NOTSUPPORTED
  121.            goto finish_ReturnOptions
  122.         endif
  123.     else
  124.         set Status = STATUS_NOLANGUAGE
  125.         goto finish_ReturnOptions
  126.     endif
  127. returnoptions = +
  128.     set OptionList     = ^(Options, 1)
  129.     set OptionTextList = ^(OptionsText$($0), 1)
  130.     set Status         = STATUS_SUCCESSFUL
  131. finish_ReturnOptions = +
  132.     Return $(Status) $(OptionList) $(OptionTextList)
  133. [InstallOption]
  134.     set Option   = $($1)
  135.     set SrcDir   = $($2)
  136.     set AddCopy  = $($3)
  137.     set DoCopy   = $($4)
  138.     set DoConfig = $($5)
  139.     set LanguageList = ^(LanguagesSupported, 1)
  140.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  141.         Return STATUS_NOLANGUAGE
  142.     endif
  143.     Debug-Output "OEMSETUP.INF: STF_CWDDIR is: "$(!STF_CWDDIR)
  144.     Debug-Output "OEMSETUP.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  145.     set-subst LF = "\n"
  146.     read-syms GeneralConstants
  147.     read-syms FileConstants
  148.     read-syms DialogConstants$(!STF_LANGUAGE)
  149.     ifstr(i) $(!NTN_Origination) == "NCPA"
  150.         set Continue = $(OK)
  151.     endif
  152.     read-syms FileConstants$(!STF_LANGUAGE)
  153.     detect date
  154.     set-title  $(FunctionTitle)
  155.     set to   = Begin
  156.     set from = Begin
  157.     set CommonStatus = STATUS_SUCCESSFUL
  158.     set HlpDir = ""
  159.     EndWait
  160. Begin = +
  161.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  162.         set StartLabel = removeadapter
  163.     else-Ifstr(i) $(!NTN_InstallMode) == Update
  164.         set StartLabel = UpgradeSoftware
  165.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  166.         set StartLabel = bindingadapter
  167.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  168.         set CommonStatus = STATUS_REBOOT
  169.         set StartLabel = configureadapter
  170.         Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  171.             Debug-Output "OEMSETUP.INF: Cannot configure the driver software."
  172.             Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  173.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  174.                 Debug-Output "OEMSETUP.INF: ShellCode error: cannot get an error string."
  175.                 goto ShellCodeError
  176.             endif
  177.             set Error = $($R0)
  178.             set from = end
  179.             set to = end
  180.             goto nonfatalinfo
  181.         endif
  182.     else
  183.         ifstr(i) $(DoCopy) == "YES"
  184.             GetDriveInPath SrcDrv $(SrcDir)
  185.             ifstr(i) $(SrcDrv) == "A:"
  186.                 Set HlpDir = $(SrcDrv)NDIS3\NT\
  187.             endif    
  188.         endif
  189.         set StartLabel = installadapter
  190.         set OEM_ABANDON_OPTIONS = {}
  191.         set OEM_ABANDON_SOFTWARE = FALSE
  192.         set OEM_ABANDON_ON = TRUE
  193.     endif
  194.     set IRQValue = *($(IRQList), 1)
  195.     set IOBaseAddrValue = *($(IOBaseAddrList), 1)
  196.     set TransceiverValue = *($(TransceiverList), 4)
  197.     set StagedReceiveValue = "No"
  198.     set NetworkAddressValue = "Burned-In"
  199.     set EditTextIn = "1"
  200.     set from = $(fatal)
  201.     set to = $(fatal)
  202.     goto $(StartLabel)
  203. installadapter = +
  204.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  205.     Ifstr $(KeyProduct) != $(KeyNull)
  206.         CloseRegKey $(KeyProduct)
  207.         ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
  208.            Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
  209.                $(ProductVersion)
  210.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  211.                Debug-Output "OEMSETUP.INF: ShellCode error: cannot get an error string."
  212.                goto ShellCodeError
  213.            endif
  214.            goto end
  215.         else
  216.            Shell $(UtilityInf), CardExistedDlg
  217.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  218.                Debug-Output "OEMSETUP.INF: ShellCode error: cannot get an error string."
  219.                goto ShellCodeError
  220.            endif
  221.            ifstr(i) $($R1) != "OK"
  222.                set CommonStatus = STATUS_USERCANCEL
  223.                goto end
  224.            endif
  225.            set OldVersionExisted = $(TRUE)
  226.         endif
  227.     Endif
  228.     install "Install-Hlp"
  229.     Goto adapteroptions
  230. configureadapter = +
  231.     Ifstr(i) $(KeyProduct) == $(KeyNull)
  232.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
  233.         Ifstr $(KeyProduct) == $(KeyNull)
  234.             Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
  235.             Debug-Output "OEMSETUP.INF: Cannot find component product key"
  236.            Goto fatalregistry
  237.         Endif
  238.     Endif
  239.     Debug-Output "OEMSETUP.INF: INF: Shelling to FindService"
  240.     Shell $(UtilityInf) FindService, $(KeyProduct)
  241.     Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  242.         Debug-Output "OEMSETUP.INF: INF: FindService shell failure"
  243.         Goto ShellCodeError
  244.     Endif
  245.     Ifstr(i) $($R0) != NO_ERROR
  246.         Debug-Output "OEMSETUP.INF: INF: FindService Shell error: "$($R0)
  247.         Goto fatalregistry
  248.     endif
  249.     set KeyParameters = $($R2)
  250.     CloseRegKey $($R1)
  251.     Ifstr $(KeyParameters) == $(KeyNull)
  252.         set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
  253.         Debug-Output "OEMSETUP.INF: Cannot find component service"
  254.         goto fatalregistry
  255.     endif
  256.     set OldVersionExisted = $(TRUE )
  257.     set ValueName = ""
  258.     set ValueData = ""
  259.     set ValueStr  = ""
  260.     set ValueList = {}
  261.     EnumRegValue $(KeyParameters) ValueList
  262.     ForListDo $(ValueList)
  263.         set ValueItem = $($)
  264.         set ValueName = *($(ValueItem),1)
  265.         set ValueData = *($(ValueItem),4)
  266.         Ifstr(i) $(ValueName) == "InterruptNumber"
  267.             set IRQValueIndex = $(ValueData)
  268.         else-ifstr(i) $(ValueName) == "IoBaseAddress"
  269.             set IOBaseAddrIndex = $(ValueData)
  270.         else-ifstr(i) $(ValueName) == "Transceiver"
  271.             set TransceiverIndex = $(ValueData)
  272.         else-ifstr(i) $(ValueName) == "BusType"
  273.             set BusInterfaceType = $(ValueData)
  274.         else-ifstr(i) $(ValueName) == "BusNumber"
  275.             set BusNumber = $(ValueData)
  276.         endif
  277.     EndForListDo
  278.     set IRQValue = *($(IRQList), ~($(IRQValues),$(IRQValueIndex)))
  279.     ifstr(i) $(IRQValue) == ""
  280.         set IRQValue = *($(IRQList), 1)
  281.     endif
  282.     set IOBaseAddrValue = *($(IOBaseAddrList), +
  283.          ~($(IOBaseAddrValues),$(IOBaseAddrIndex)))
  284.     ifstr(i) $(IOBaseAddrValue) == ""
  285.         set IOBaseAddrValue = *($(IOBaseAddrList), 1)
  286.     endif
  287.     set TransceiverValue = *($(TransceiverList), +
  288.          ~($(TransceiverValues),$(TransceiverIndex)))
  289.     ifstr(i) $(TransceiverValue) == ""
  290.         set TransceiverValue = *($(TransceiverList), 4)
  291.     endif
  292. adapteroptions = +
  293.     set from = adapteroptions
  294. ; Get path for Help File ETH16I.HLP    
  295.     SetHelpFile $(HlpDir)ETH16I.HLP 6100 6100
  296.     read-syms FileDependentDlg$(!STF_LANGUAGE)
  297.     ui start "InputDlg"
  298.     ifstr(i) $(DLGEVENT) == "CONTINUE"
  299.         set IRQValueIndex = $(Combo1Out)
  300.         set IOBaseAddrIndex = $(Combo2Out)
  301.         set TransceiverIndex = $(Combo3Out)
  302.         ui pop 1
  303.         goto nextstep
  304.     else-ifstr(i) $(DLGEVENT) == "BACK"
  305.         set CommonStatus = STATUS_USERCANCEL
  306.         Debug-Output "OEMSETUP.INF: Action: exit. Bye."
  307.         ui pop 1
  308.         goto end
  309.     else
  310.         ui pop 1
  311.         Debug-Output "OEMSETUP.INF: Action: unknown. Bye."
  312.         goto end
  313.     endif
  314.     ifstr(i) $(!STF_NCDETINFO) == {}
  315.         Shell $(UtilityInf),GetBusTypeDialog,$(ProductHardware$(Option)Description) $(BusInterfaceType) $(BusNumber)
  316.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  317.             Debug-Output "ShellCode error."
  318.             goto ShellCodeError
  319.         endif
  320.         set BusInterfaceType = $($R1)
  321.         set BusNumber = $($R2)
  322.     else
  323. ;        set BusInterfaceType = *($(!STF_NCDETINFO),5)
  324. ;        set BusNumber = *($(!STF_NCDETINFO),6)
  325.         set BusInterfaceType = 1
  326.         set BusNumber = 0
  327.     endif
  328. nextstep = +
  329.     ifint $(OldVersionExisted) == $(TRUE)
  330.         ifstr(i) $(!NTN_InstallMode) == configure
  331.             goto writeparameters
  332.         endif
  333.     endif
  334.     StartWait
  335.     Ifint $(OldVersionExisted) != $(FALSE)
  336.         Goto installhardware
  337.     Endif
  338.     ifstr(i) $(!NTN_InstallMode) == "install"
  339.        Ifstr(i) $(DoCopy) == "YES"
  340.           Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  341.           Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  342.               Goto ShellCodeError
  343.           Else-Ifstr(i) $($R0) == STATUS_FAILED
  344.               Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  345.               ifint $($ShellCode) != $(!SHELL_CODE_OK)
  346.                   goto ShellCodeError
  347.               endif
  348.               set Error = $($R0)
  349.               Goto fatal
  350.           Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  351.               Goto successful
  352.           Endif
  353.           Set SrcDir = $($R1)
  354. ; Set Subdirectory NDIS3\NT for OEM Disk.
  355.           GetDriveInPath SrcDrv $(SrcDir)
  356.           ifstr(i) $(SrcDrv) == "A:"
  357.               Set SrcDir = $(SrcDrv)NDIS3\NT\
  358.           endif    
  359.        Endif
  360.        install "Install-Option"
  361.        ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  362.            Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  363.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  364.                goto ShellCodeError
  365.            endif
  366.            set Error = $($R0)
  367.            goto fatal
  368.        endif
  369.     endif
  370.     Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
  371.         $(ProductSoftwareName), +
  372.         $(ProductSoftwareName), +
  373.         $(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
  374.         $(ProductSoftwareImagePath), "kernel", "NDIS", {}, "",+
  375.         $(NetEventDLL), ""
  376.     Set OEM_ABANDON_SOFTWARE = TRUE
  377.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  378.         Debug-Output "OEMSETUP.INF: ShellCode error"
  379.         goto ShellCodeError
  380.     endif
  381.     set RegistryErrorIndex = $($R0)
  382.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  383.         EndWait
  384.         Debug-Output "OEMSETUP.INF: Registry error: add software components"
  385.         CloseRegKey $($R1)
  386.         CloseRegKey $($R2)
  387.         CloseRegKey $($R3)
  388.         CloseRegKey $($R4)
  389.         CloseRegKey $($R5)
  390.         goto fatalregistry
  391.     endif
  392.     Set SoftProductKey  = $($R1)
  393.     Set SoftNetRuleKey  = $($R2)
  394.     Set SoftServiceKey  = $($R3)
  395.     Set SoftParameterKey        = $($R4)
  396.     Set SoftLinkageKey  = $($R5)
  397.     set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  398.                        {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
  399.                        {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
  400.                        {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
  401.                        {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
  402.                        {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
  403.                        {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  404.     Shell  $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
  405.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  406.             Debug-Output "OEMSETUP.INF: ShellCode error."
  407.             goto ShellCodeError
  408.     endif
  409.     set RegistryErrorIndex = $($R0)
  410.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  411.             EndWait
  412.             Debug-Output "OEMSETUP.INF: Registry error: add value list for software product."
  413.             CloseRegKey $(SoftProductKey)
  414.             CloseRegKey $(SoftNetRuleKey)
  415.             CloseRegKey $(SoftServiceKey)
  416.             CloseRegKey $(SoftParameterKey)
  417.         CloseRegKey $(SoftLinkageKey)
  418.         goto fatalregistry
  419.     endif
  420.     set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
  421.                         {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
  422.                         {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
  423.                         {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
  424.                         {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
  425.                         {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  426.     Shell  $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
  427.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  428.             Debug-Output "OEMSETUP.INF: ShellCode error."
  429.             goto ShellCodeError
  430.     endif
  431.     Set RegistryErrorIndex = $($R0)
  432.     CloseRegKey $(SoftProductKey)
  433.     CloseRegKey $(SoftNetRuleKey)
  434.     CloseRegKey $(SoftServiceKey)
  435.     CloseRegKey $(SoftParameterKey)
  436.     CloseRegKey $(SoftLinkageKey)
  437.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  438.         EndWait
  439.         Debug-Output "OEMSETUP.INF: Registry error: add value list."
  440.         goto fatalregistry
  441.     endif
  442. installhardware =+
  443.     Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
  444.     ifint $($R4) != -1
  445.         Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
  446.     endif
  447.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  448.         Debug-Output "OEMSETUP.INF: Cannot add hardware component"
  449.         goto ShellCodeError
  450.     endif
  451.     set RegistryErrorIndex = $($R0)
  452.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  453.         EndWait
  454.         Debug-Output "OEMSETUP.INF: Registry error: add hardware component"
  455.         CloseRegKey $($R1)
  456.         CloseRegKey $($R2)
  457.         CloseRegKey $($R3)
  458.         goto fatalregistry
  459.     endif
  460.     set KeyProduct = $($R1)
  461.     set KeyAdapterRules = $($R2)
  462.     set KeyParameters = $($R3)
  463.     set AdapterNumber = $($R4)
  464.     set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
  465.                        {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardware$(Option)Title)},+
  466.                        {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardware$(Option)Description)},+
  467.                        {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
  468.                        {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
  469.                        {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  470.     Shell  $(UtilityInf), AddValueList, $(KeyProduct), $(NewValueList)
  471.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  472.         Debug-Output "OEMSETUP.INF: ShellCode error"
  473.         goto ShellCodeError
  474.     endif
  475.     CloseRegKey $(KeyProduct)
  476.     Set KeyProduct = ""
  477.     set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
  478.     set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
  479.     set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
  480.                         {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
  481.                         {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
  482.                         {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  483.     Shell  $(UtilityInf), AddValueList, $(KeyAdapterRules), $(NewValueList)
  484.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  485.         Debug-Output "OEMSETUP.INF: ShellCode error."
  486.         goto ShellCodeError
  487.     endif
  488.     CloseRegKey $(KeyAdapterRules)
  489.     Set RegistryErrorIndex = $($R0)
  490.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  491.         EndWait
  492.         Debug-Output "OEMSETUP.INF: Registry error: add value list."
  493.         CloseRegKey $(KeyParameters)
  494.         goto fatalregistry
  495.     Endif
  496. writeparameters = +
  497.     Ifstr(i) $(KeyParameters) == $(KeyNull)
  498.         Debug-Output "OEMSETUP.INF:  *** KeyParameters is NULL at writeparameters"
  499.     Endif
  500.     set IRQValue = *($(IRQValues), ~($(IRQList),$(IRQValueIndex)))
  501.     set IOBaseAddrValue = *($(IOBaseAddrValues), +
  502.          ~($(IOBaseAddrList),$(IOBaseAddrIndex)))
  503.     set TransceiverValue = *($(TransceiverValues), +
  504.          ~($(TransceiverList),$(TransceiverIndex)))
  505.     set NewValueList = {+
  506.                         {MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
  507.                         {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusInterfaceType)},+
  508.                         {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)},+
  509.                         {InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(IRQValue)},+
  510.                         {IoBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(IOBaseAddrValue)},+
  511.                         {Transceiver,$(NoTitle),$(!REG_VT_SZ),$(TransceiverValue)},+
  512.                         {StagedReceive,$(NoTitle),$(!REG_VT_SZ),$(StagedReceiveValue)},+
  513.                         {NetworkAddress,$(NoTitle),$(!REG_VT_SZ),$(NetworkAddressValue)},+
  514.                         {TransmitBufferSize,$(NoTitle),$(!REG_VT_DWORD),8)}}
  515.     Shell  $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
  516.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  517.         Debug-Output "OEMSETUP.INF: ShellCode error."
  518.         goto ShellCodeError
  519.     endif
  520.     Set RegistryErrorIndex = $($R0)
  521.     CloseRegKey $(KeyParameters)
  522.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  523.         Debug-Output "OEMSETUP.INF: Registry error: Add value list"
  524.         goto fatalregistry
  525.     Endif
  526.     EndWait
  527.     goto successful
  528. bindingadapter =+
  529.     set Error = "Binding: Sorry, not yet implemented."
  530.     goto fatal
  531. removeadapter = +
  532.     Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  533.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  534.             $(ProductSoftwareName)
  535.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  536.             Debug-Output "OEMSETUP.INF: ShellCode error"
  537.             goto ShellCodeError
  538.         endif
  539.         set RegistryErrorIndex = $($R0)
  540.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  541.             goto fatalregistry
  542.         endif
  543.     else
  544.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  545.             $(ProductSoftwareName), $(!NTN_RegBase)
  546.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  547.             Debug-Output "OEMSETUP.INF: ShellCode error"
  548.             goto ShellCodeError
  549.         endif
  550.         set RegistryErrorIndex = $($R0)
  551.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  552.             goto fatalregistry
  553.         endif
  554.     endif
  555.     goto end
  556. UpgradeSoftware = +
  557.     ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  558.         OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  559.         Ifstr $(KeyProduct) != $(KeyNull)
  560.             GetRegValue $(KeyProduct),"MajorVersion", VersionInfo
  561.             set Version = *($(VersionInfo), 4)
  562.             Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
  563.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  564.                 Debug-Output "ShellCode error"
  565.                 goto ShellCodeError
  566.             endif
  567.             set !UG_Filename = $($R0)
  568.             ifstr(i) $(!UG_Filename) != ""
  569.                 install "Install-Update"
  570.                 ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  571.                     goto fatal
  572.                 endif
  573.             endif
  574.             SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
  575.             SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
  576.             ifint $(Version) != $(ProductVersion)
  577.             endif
  578.             CloseRegKey $(KeyProduct)
  579.         else
  580.             goto fatalregistry
  581.         endif
  582.     else
  583.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) +
  584.               $(MAXIMUM_ALLOWED) NetworkCardKey
  585.         Ifstr(i) $(NetworkCardKey) != $(KeyNull)
  586.             GetRegValue $(NetworkCardKey),"ServiceName", ServiceNameInfo
  587.             set ServiceName = *($(ServiceNameInfo), 4)
  588.             OpenRegKey $(NetworkCardKey) "" "NetRules" +
  589.                 $(MAXIMUM_ALLOWED) NetRuleKey
  590.             Ifstr(i) $(NetRuleKey) != $(KeyNull)
  591.             else
  592.                 goto fatalregistry
  593.             endif
  594.             CloseRegKey $(NetRules)
  595.             CloseRegKey $(NetworkCardKey)
  596.         else
  597.             goto fatalregistry
  598.         endif
  599.         OpenRegKey $(!REG_H_LOCAL) "" +
  600.               $(!NTN_ServiceBase)"\"$(ServiceName) +
  601.               $(MAXIMUM_ALLOWED) ServiceKey
  602.         Ifstr(i) $(ServiceKey) != $(KeyNull)
  603.             CloseRegKey $(ServiceKey)
  604.         else
  605.             goto fatalregistry
  606.         endif
  607.     endif
  608.     goto end
  609. successful = +
  610.     goto end
  611. abandon = +
  612.     ForListDo $(OEM_ABANDON_OPTIONS)
  613.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  614.             $(ProductSoftwareName), $($)
  615.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  616.             Debug-Output "OEMSETUP.INF: ShellCode error"
  617.             goto ShellCodeError
  618.         endif
  619.         set RegistryErrorIndex = $($R0)
  620.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  621.             goto fatalregistry
  622.         endif
  623.     EndForListDo
  624.     Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
  625.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  626.             $(ProductSoftwareName), FALSE
  627.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  628.             Debug-Output "OEMSETUP.INF: ShellCode error"
  629.             goto ShellCodeError
  630.         endif
  631.         set RegistryErrorIndex = $($R0)
  632.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  633.             goto fatalregistry
  634.         endif
  635.     endif
  636.     goto end
  637. warning = +
  638.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  639.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  640.         goto ShellCodeError
  641.     endif
  642.     ifstr(i) $($R1) == "OK"
  643.         goto $(to)
  644.     else-ifstr(i) $($R1) == "CANCEL"
  645.         goto $(from)
  646.     else
  647.         goto "end"
  648.     endif
  649. nonfatalinfo = +
  650.     Set CommonStatus = STATUS_USERCANCEL
  651.     Set Severity = STATUS
  652.     goto nonfatalmsg
  653. nonfatal = +
  654.     Set Severity = NONFATAL
  655.     goto nonfatalmsg
  656. nonfatalmsg = +
  657.     ifstr(i) $(Error) == ""
  658.         Set Severity = NONFATAL
  659.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  660.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  661.             goto ShellCodeError
  662.         endif
  663.         set Error = $($R0)
  664.     endif
  665.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  666.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  667.         goto ShellCodeError
  668.     endif
  669.     ifstr(i) $($R1) == "OK"
  670.         goto $(from)
  671.     else
  672.         goto "end"
  673.     endif
  674. fatalregistry = +
  675.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  676.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  677.         goto ShellCodeError
  678.     endif
  679.     set Error = $($R0)
  680.     goto fatal
  681. fatal = +
  682.     ifstr(i) $(Error) == ""
  683.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  684.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  685.             goto ShellCodeError
  686.         endif
  687.         set Error = $($R0)
  688.     endif
  689.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  690.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  691.         goto ShellCodeError
  692.     endif
  693.     goto setfailed
  694. ShellCodeError = +
  695.     set DlgType      = "MessageBox"
  696.     set STF_MB_TITLE = $(ShellCodeErrorTitle)
  697.     set STF_MB_TEXT  = $(ShellCodeErrorText)
  698.     set STF_MB_TYPE  = 1
  699.     set STF_MB_ICON  = 3
  700.     set STF_MB_DEF   = 1
  701.     ui start "Error Message"
  702.     goto setfailed
  703. setfailed = +
  704.     set CommonStatus = STATUS_FAILED
  705.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  706.         set OEM_ABANDON_ON = FALSE
  707.         goto abandon
  708.     endif
  709.     goto end
  710. end = +
  711.     goto term
  712. term = +
  713.     Return $(CommonStatus)
  714. [Install-Option]
  715.     set STF_VITAL = ""
  716.     ifstr(i) $(AddCopy) == "YES"
  717.         AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  718.     endif
  719.     Debug-Output "OEMSETUP.INF: [Install-Option] DoCopy = "$(DoCopy)
  720.     ifstr(i) $(DoCopy) == "YES"
  721.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  722.        CopyFilesInCopyList
  723.     endif
  724.     ifstr(i) $(DoConfig) == "YES"
  725.     endif
  726.     Exit
  727. [Install-Update]
  728.    set STF_VITAL        = ""
  729.    set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
  730.    AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  731.    AddSectionFilesToCopyList Files-Inf $(SrcDir) $(!STF_WINDOWSSYSPATH)
  732.    set !STF_NCPA_FLUSH_COPYLIST = TRUE
  733.    CopyFilesInCopyList
  734.    exit
  735. [Install-Hlp]
  736.    set STF_VITAL        = ""
  737.    AddSectionFilesToCopyList Files-Hlp $(SrcDir) $(!STF_WINDOWSSYSPATH)
  738.    CopyFilesInCopyList
  739.    exit
  740. [Source Media Descriptions]
  741.     1  = "Windows NT Setup Disk #1"  
  742.  
  743. [Signature]
  744.     FileType = MICROSOFT_DRVLIB_FILE
  745. [GetSignature]
  746.     read-syms Signature
  747.     return $(FileType)
  748.  
  749. [ProductType]
  750. STF_PRODUCT  = Winnt
  751. STF_PLATFORM = I386
  752. [Files-Inf]
  753. 1,    oemsetup.inf,     SIZE=1000,    RENAME=$(!UG_Filename)
  754. [Files-Hlp]
  755. 1,    ETH16I.HLP,     SIZE=999
  756. [Files-ETH16I]
  757. 1,ETH16I.SYS , SIZE=45568
  758. [Files-ETH32]
  759. 1,ETH16I.SYS , SIZE=45568
  760. [LanguagesSupported]
  761.     ENG
  762. [OptionsTextENG]
  763.     ETH16I     = "ICL EtherTeam16i Adapter"
  764.     ETH32      = "ICL EtherTeam32 Adapter"
  765. [FileConstantsENG]
  766. ProCaption   = "Windows NT Setup"
  767. ProCancel    = "Cancel"
  768. ProCancelMsg = "Windows NT Networking is not correctly installed.  "+
  769.                "Are you sure you want to cancel copying files?"
  770. ProCancelCap = "Network Setup Message"
  771. ProText1     = "Copying:"
  772. ProText2     = "To:"
  773. FunctionTitle   = "ICL EtherTeam16i/32 Adapter Card Setup"
  774. ProductSoftwareDescription      = "ICL EtherTeam16i/32 Adapter Driver"
  775. ProductHardwareETH16IDescription          = "ICL EtherTeam16i Adapter"
  776. ProductHardwareETH32Description           = "ICL EtherTeam32 Adapter"
  777. ProductSoftwareTitle    = "ICL EtherTeam16i/32 Driver"
  778. ProductHardwareETH16ITitle        = "ICL EtherTeam16i Adapter"
  779. ProductHardwareETH32Title         = "ICL EtherTeam32 Adapter"
  780. IRQList  = ^(IRQChoices$(Option), 1)
  781. IRQValues = ^(IRQChoices$(Option), 2)
  782. IOBaseAddrList = ^(IOBaseAddrChoices$(Option), 1)
  783. IOBaseAddrValues = ^(IOBaseAddrChoices$(Option), 2)
  784. TransceiverList = ^(TransceiverChoices$(Option), 1)
  785. TransceiverValues = ^(TransceiverChoices$(Option), 2)
  786. ShellCodeErrorTitle     = "Error: "$(FunctionTitle)
  787. ShellCodeErrorText      = "Shell Code Error."
  788. [DialogConstantsENG]
  789. Help        = "&Help"
  790. Exit        = "Cancel"
  791. OK          = "OK"
  792. HelpContext = ""
  793. Continue    = "Continue"
  794. Cancel      = "Cancel"
  795. [FileDependentDlgENG]
  796. Label1 = "&Interrupt Number:"
  797. Label2 = "I/O &Base Address:"
  798. Label3 = "&Transceiver:"
  799. DlgType = "Combination"
  800. DlgTemplate = "UBNDIS"
  801. Caption = $(FunctionTitle)
  802. Combo1List = $(IRQList)
  803. Combo1Out  = $(IRQValue)
  804. Combo2List = $(IOBaseAddrList)
  805. Combo2Out  = $(IOBaseAddrValue)
  806. Combo3List = $(TransceiverList)
  807. Combo3Out  = $(TransceiverValue)
  808. ComboListItemsIn  = {Combo1List, Combo2List, Combo3List}
  809. ComboListItemsOut = {Combo1Out, Combo2Out, Combo3Out}
  810. EditTextLim = ""
  811. CBOptionsGreyed = {}
  812. HelpContext = 6100
  813.